<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        //一javascript 的 typeot 返回那些数据类型?
        // console.log(typeof 2);               // number
        // console.log(typeof true);            // boolean
        // console.log(typeof 'str');           // string
        // console.log(typeof []);              // object
        // console.log(typeof function () { });    // function
        // console.log(typeof {});              // object
        // console.log(typeof undefined);       // undefined
        // console.log(typeof null);            // object
        // console.log(typeof Date);            //function
        // console.log(typeof Math);            //object

        // 二 split()和 join()的区别?
        // split 用于分割字符串，返回一个数组
        // 只有一个参数时：分割的字符串或正则表达式；两个参数时，第二个参数是指返回的数组中元素的个数
        // jojn用于连接多个字符或字符串，返回值为一个字符串

        //三 事件委托
        // 就是把该绑定在自己身上的事件绑定在父元素上面 这就叫事件委托
        // 比如多个li要绑定事件 我们可以给ul绑定 事件委托的的原理是冒泡

        //四 添加 删除 替换 插入到某个节点的方法
        //JS
        // 添加 ：appendChild("要添加的节点")
        //删除 ：removeChild()
        //插入： insertBefore（插入节点，被插节点）
        //替换： replaceChild（新节点,旧节点）
        // JQ
        //添加:  append() （旧节点添加新节点后面）
        //删除: appendTo() （新节点添加到旧节点后面）
        //插入： prepend() （旧节点添加新节点的前面）
        //替换： prependTo() （新节点添加到旧节点的前面)

        // 五获取到页面中所有的 checkbox 怎么做(不使用第三方框架)
        // 1、document.getElementsByTagName('input')获取页面所有input标签的dom
        // 2、循环遍历inputDom
        // 3、通过inputDom[i].type ==’checkbox'获得页面上的checkbox
        // 4、将遍历获取到的所有结果push进新建数组中

        //六
        // var foo="11"+2-"1"
        // console.log(foo);//111
        // console.log(typeof foo);//number
        // "11"+2结果是112，type是string，但是-“1”，使得foo转化成数字类型进行运算了

        //七已知有字符串 foo=“get-element-by-id",xieyigefunction将其转换成驼峰示法”getElentByld
        // var foo = "get-element-by-id"
        // var arr = foo.split("-");
        // console.log(arr); //["get", "element", "by", "id"]
        // for (var i = 1; i < arr.length; i++) {
        //     arr[i] = arr[i].charAt(0).toUpperCase() + arr[i].slice(1);
        // }
        // //charAt()是返回字符串中第几个字符，0代表返回第一个字符
        // //toUpperCase转化为大写
        // //join方法，将数组放入一个字符串中，默认是以逗号隔开，写了"" 字符串就是一坨
        // console.log(arr) //["get", "Element", "By", "Id"]
        // var arr = arr.join("") //getElementById
        // console.log(arr);

        //八请介绍一下javascript的splice方法
        // splice() 方法通过删除或替换现有元素或者原地添加新的元素来修改数组,
        // 并以数组形式返回被修改的内容。此方法会改变原数组

        //九
        //attachEvent方法适用于IE    addEventListener方法适用于FF
        //attachEvent中的事件带on   而addEventListener中的事件不带on
        //attachEvent方法两个参数：第一个参数为事件名称，第二个参数为接收事件处理的函数；
        //addEventListener 有三个参数：第一个参数表示事件名称（不含 on，如 "click"）；
        //第二个参数表示要接收事件处理的函数；第三个参数是一个bool值，一般为false

        //十请写出一个圆的Css样式
        // 给一个div 给宽高和border   border-radius

        //十一
    </script>
</body>

</html>